
*------------------------------------------------------------------------------*
* Special Case of ASPM: Veto player in France in times of cohabitation
*
* Version:	2016-06-13
* Changes:	2016-??-??: First release
*------------------------------------------------------------------------------*


* Minumum and maximum of government parties (and minority partners if previously selected)
gen zsp103 = 1 if p103 == 1
capture: replace zsp103 = 1 if minogov_dummy == 1 & minority == 1

gen zsgov = $ideology if zsp103 == 1
by g101 g105, sort: egen govmin = min(zsgov)
by g101 g105, sort: egen govmax = max(zsgov)


* Fallback
replace govmin = median1st if govmin == . & GOV_POS == median1st
replace govmax = median1st if govmax == . & GOV_POS == median1st



* ------------
* IV. Republic
* ------------

*	Government only until 3q1958 (~ -6)
gen VP_RANGE = govmax - govmin if g105 <= -6



* ------------
* V. Republic:
* ------------

* No Cohabitation: Government, 2nd Chamber Median & President
replace VP_RANGE = max(govmax,median2nd,pres) - min(govmin,median2nd,pres) if g105 > -6

* Cohabitation: Government & 2nd Chamber Median
* 	2q1986-1q1988, 2q1993-2q1995, 3q1997-1q2002
replace VP_RANGE = max(govmax,median2nd) - min(govmin,median2nd) if  g105 >=105 & g105 <=112
replace VP_RANGE = max(govmax,median2nd) - min(govmin,median2nd) if  g105 >=133 & g105 <=141
replace VP_RANGE = max(govmax,median2nd) - min(govmin,median2nd) if  g105 >=150 & g105 <=168



* ---


* Cleansing
replace govmin	 = . if g106 == 9
replace govmax	 = . if g106 == 9
replace VP_RANGE = . if g106 == 9

lab var govmin "Minimum position within government"
lab var govmax "Maximum position within government"
lab var VP_RANGE "Veto player range"

sort g101 g105 p101

capture: macro drop vetoplayer
capture: drop zsp103 zsgov

